package com.ruoyi.tongban.service.impl;

import java.util.List;

import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.tongban.mapper.InsClassMapper;
import com.ruoyi.tongban.domain.InsClass;
import com.ruoyi.tongban.service.IInsClassService;

/**
 * 班级Service业务层处理
 * 
 * @author caiyanshan
 * @date 2021-03-09
 */
@Service
public class InsClassServiceImpl implements IInsClassService 
{
    @Autowired
    private InsClassMapper insClassMapper;

    /**
     * 查询班级
     * 
     * @param classId 班级ID
     * @return 班级
     */
    @Override
    public InsClass selectInsClassById(Long classId)
    {
        return insClassMapper.selectInsClassById(classId);
    }
    
    public List<InsClass> listInstitutionClass(Long intitutionId){
        return insClassMapper.listInstitutionClass(intitutionId);
    }

    /**
     * 查询班级列表
     * 
     * @param insClass 班级
     * @return 班级
     */
    @Override
    public List<InsClass> selectInsClassList(InsClass insClass)
    {
        return insClassMapper.selectInsClassList(insClass);
    }

    /**
     * 新增班级
     * 
     * @param insClass 班级
     * @return 结果
     */
    @Override
    public int insertInsClass(InsClass insClass)
    {
        insClass.setStatus(1);
        insClass.setCreateTime(DateUtils.getNowDate());
        insClass.setCreateUser(SecurityUtils.getLoginUser().getUser().getUserId());
        return insClassMapper.insertInsClass(insClass);
    }

    /**
     * 修改班级
     * 
     * @param insClass 班级
     * @return 结果
     */
    @Override
    public int updateInsClass(InsClass insClass)
    {
        insClass.setUpdateTime(DateUtils.getNowDate());
        insClass.setUpdateUser(SecurityUtils.getLoginUser().getUser().getUserId());
        return insClassMapper.updateInsClass(insClass);
    }

    /**
     * 批量删除班级
     * 
     * @param classIds 需要删除的班级ID
     * @return 结果
     */
    @Override
    public int deleteInsClassByIds(Long[] classIds)
    {
        return insClassMapper.deleteInsClassByIds(classIds);
    }

    /**
     * 删除班级信息
     * 
     * @param classId 班级ID
     * @return 结果
     */
    @Override
    public int deleteInsClassById(Long classId)
    {
        return insClassMapper.deleteInsClassById(classId);
    }
}
